
var http = require('http');
var fs = require('fs');

var hostname = '127.0.0.1';
var port = 3000;

// 创建服务器
var server = http.createServer(function(req, res){
	 // 跳过了 chrome 的收藏夹图标的请求
    if (req.url == '/favicon.ico') return;

    fs.readdir('./imgs', function(err, files){
    	// 以数组的形式 返回该文件夹中的文件名
    	// console.log(files);
    	// ['1.jpg','2.jpg','3.jpg','4.jpg','5.jpg','6.jpg','7.jpg','8.jpg','9.jpg','aaa',  'bbb']

    	// var wjj = []; // 存储文件夹名称
    	// for (var i = 0; i < files.length; i++) {
    	// 	var thisname = files[i];
    	// 	// 文件信息的检测
    	// 	fs.stat('./imgs/' + thisname, function(err, data){
    	// 		// 是否是文件夹,如果是则追加到数组里
    	// 		if (data.isDirectory()) {
    	// 			wjj.push(thisname);
    	// 		}
    	// 		// 循环过程输出一下
    	// 		console.log(wjj);
    	// 	});
    	// 	console.log('for循环已完成: ' + wjj);
    	// }

    	// 迭代器 : 同步 强变 异步
    	// (function iterator(i){
    	// 	if (i == files.length) {
    	// 		console.log('迭代器已完成: ', wjj);
    	// 		return;
    	// 	}
    	// 	console.log(files[i]);
    	// 	// files: [ '1.jpg','2.jpg','3.jpg','4.jpg','5.jpg','6.jpg','7.jpg','8.jpg','9.jpg','aaa',  'bbb' ]
    	// 	fs.stat('./imgs/'+files[i], function(err, stats){
    	// 		// 是否显示文件夹, 如果是则追加到数组里
    	// 		if (stats.isDirectory()) {
    	// 			wjj.push(files[i]);
    	// 		}
    	// 		// 进行迭代调用
    	// 		iterator(i+1);
    	// 	});
    	// })(0);

    	// 使用 nodejs提供的同步接口来实现同样的功能
    	for (var i = 0; i < files.length; i++) {
    		var thisname = files[i];
    		// 同步的读取文件状态信息接口
    		var thisstat = fs.statSync('./imgs/'+thisname);
    		if (thisstat.isDirectory()) {
    			wjj.push(thisname);
    		}
    	}
    	console.log(wjj);
    });
    res.end('读取完成');
});
	
// 运行服务器
server.listen(port, hostname);